<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>备忘录模式——缓存数据</title>
	</head>
	<body>
		<script>
			// Page 备忘录类
			var Page = function(){
				// 信息缓存对象
				var cache = {};
				/**
				 * 主函数
				 * 参数 page 页码
				 * 参数 fn 成功回调函数
				 */
				return function(page,fn){
					if(cache[page]){
						// 从缓存中获取数据，恢复到该页状态，显示出来
						showPage(page, cache[page]);
						fn && fn();
					} else {
						$.post('./data/getNewsData.php',{
							page: page
						},function(result){
							if(result.errNo === 0 ){
								showPage(page, result.data);
								// 将该页数据种入缓存中
								cache[page] = result.data;
								fn && fn();
							} else {
								// 处理异常
							}
						})
					}
				}
			}();
			function showPage(page, data){
				//
			}
		</script>
	</body>
</html>
